home *** CD-ROM | disk | FTP | other *** search
- /* GadTools layout toolkit
- **
- ** Copyright © 1993-1995 by Olaf `Olsen' Barthel
- ** Freely distributable.
- */
-
- #include "gtlayout_global.h"
-
- struct Gadget * __regargs
- LTP_CreatePicker(LayoutHandle *handle,ObjectNode *parentNode,struct Gadget *parentGadget,struct NewGadget *ng)
- {
- ObjectNode *node;
- struct Gadget *picker;
-
- if(node = LTP_CreateObjectNode(handle,PICKER_KIND,parentGadget -> GadgetID,NULL))
- {
- ng -> ng_LeftEdge = ng -> ng_LeftEdge + ng -> ng_Width;
- ng -> ng_Width = (4 + (((6 * handle -> GlyphWidth) / 4) & ~1) + 1 + 4);
- ng -> ng_GadgetText = "";
- ng -> ng_UserData = node;
- ng -> ng_Flags = NULL;
-
- node -> Special . Picker . Image = NewObject(LTP_ImageClass,NULL,
- IIA_ImageType, IMAGECLASS_PICKER,
- IA_Width, ng -> ng_Width,
- IA_Height, ng -> ng_Height,
- TAG_DONE);
-
- if(node -> Special . Picker . Image)
- {
- if(picker = CreateGadgetA(GENERIC_KIND,parentGadget,ng,NULL))
- {
- picker -> GadgetType |= GTYP_BOOLGADGET;
- picker -> Flags |= GFLG_GADGIMAGE | GFLG_GADGHIMAGE;
- picker -> Activation |= GACT_RELVERIFY;
- picker -> GadgetRender = node -> Special . Picker . Image;
- picker -> SelectRender = node -> Special . Picker . Image;
-
- if(parentNode -> Disabled)
- picker -> Flags |= GFLG_DISABLED;
-
- node -> Host = picker;
-
- node -> Special . Picker . Parent = parentGadget;
-
- return(picker);
- }
- else
- LTP_DeleteObjectNode(handle,node);
- }
- }
-
- return(NULL);
- }
-